package com.cn.mmd.model;

import java.util.ArrayList;
import java.util.List;

public class SupervisorEvaluateExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SupervisorEvaluateExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andSupervisorevaluateidIsNull() {
            addCriterion("supervisorEvaluateId is null");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidIsNotNull() {
            addCriterion("supervisorEvaluateId is not null");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidEqualTo(Integer value) {
            addCriterion("supervisorEvaluateId =", value, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidNotEqualTo(Integer value) {
            addCriterion("supervisorEvaluateId <>", value, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidGreaterThan(Integer value) {
            addCriterion("supervisorEvaluateId >", value, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidGreaterThanOrEqualTo(Integer value) {
            addCriterion("supervisorEvaluateId >=", value, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidLessThan(Integer value) {
            addCriterion("supervisorEvaluateId <", value, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidLessThanOrEqualTo(Integer value) {
            addCriterion("supervisorEvaluateId <=", value, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidIn(List<Integer> values) {
            addCriterion("supervisorEvaluateId in", values, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidNotIn(List<Integer> values) {
            addCriterion("supervisorEvaluateId not in", values, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidBetween(Integer value1, Integer value2) {
            addCriterion("supervisorEvaluateId between", value1, value2, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisorevaluateidNotBetween(Integer value1, Integer value2) {
            addCriterion("supervisorEvaluateId not between", value1, value2, "supervisorevaluateid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridIsNull() {
            addCriterion("supervisorId is null");
            return (Criteria) this;
        }

        public Criteria andSupervisoridIsNotNull() {
            addCriterion("supervisorId is not null");
            return (Criteria) this;
        }

        public Criteria andSupervisoridEqualTo(String value) {
            addCriterion("supervisorId =", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridNotEqualTo(String value) {
            addCriterion("supervisorId <>", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridGreaterThan(String value) {
            addCriterion("supervisorId >", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridGreaterThanOrEqualTo(String value) {
            addCriterion("supervisorId >=", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridLessThan(String value) {
            addCriterion("supervisorId <", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridLessThanOrEqualTo(String value) {
            addCriterion("supervisorId <=", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridLike(String value) {
            addCriterion("supervisorId like", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridNotLike(String value) {
            addCriterion("supervisorId not like", value, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridIn(List<String> values) {
            addCriterion("supervisorId in", values, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridNotIn(List<String> values) {
            addCriterion("supervisorId not in", values, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridBetween(String value1, String value2) {
            addCriterion("supervisorId between", value1, value2, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andSupervisoridNotBetween(String value1, String value2) {
            addCriterion("supervisorId not between", value1, value2, "supervisorid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidIsNull() {
            addCriterion("byEvaluatePersonId is null");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidIsNotNull() {
            addCriterion("byEvaluatePersonId is not null");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidEqualTo(String value) {
            addCriterion("byEvaluatePersonId =", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidNotEqualTo(String value) {
            addCriterion("byEvaluatePersonId <>", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidGreaterThan(String value) {
            addCriterion("byEvaluatePersonId >", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidGreaterThanOrEqualTo(String value) {
            addCriterion("byEvaluatePersonId >=", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidLessThan(String value) {
            addCriterion("byEvaluatePersonId <", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidLessThanOrEqualTo(String value) {
            addCriterion("byEvaluatePersonId <=", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidLike(String value) {
            addCriterion("byEvaluatePersonId like", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidNotLike(String value) {
            addCriterion("byEvaluatePersonId not like", value, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidIn(List<String> values) {
            addCriterion("byEvaluatePersonId in", values, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidNotIn(List<String> values) {
            addCriterion("byEvaluatePersonId not in", values, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidBetween(String value1, String value2) {
            addCriterion("byEvaluatePersonId between", value1, value2, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andByevaluatepersonidNotBetween(String value1, String value2) {
            addCriterion("byEvaluatePersonId not between", value1, value2, "byevaluatepersonid");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsIsNull() {
            addCriterion("evaluateTotalPoints is null");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsIsNotNull() {
            addCriterion("evaluateTotalPoints is not null");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsEqualTo(Float value) {
            addCriterion("evaluateTotalPoints =", value, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsNotEqualTo(Float value) {
            addCriterion("evaluateTotalPoints <>", value, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsGreaterThan(Float value) {
            addCriterion("evaluateTotalPoints >", value, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsGreaterThanOrEqualTo(Float value) {
            addCriterion("evaluateTotalPoints >=", value, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsLessThan(Float value) {
            addCriterion("evaluateTotalPoints <", value, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsLessThanOrEqualTo(Float value) {
            addCriterion("evaluateTotalPoints <=", value, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsIn(List<Float> values) {
            addCriterion("evaluateTotalPoints in", values, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsNotIn(List<Float> values) {
            addCriterion("evaluateTotalPoints not in", values, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsBetween(Float value1, Float value2) {
            addCriterion("evaluateTotalPoints between", value1, value2, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatetotalpointsNotBetween(Float value1, Float value2) {
            addCriterion("evaluateTotalPoints not between", value1, value2, "evaluatetotalpoints");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelIsNull() {
            addCriterion("evaluateLabel is null");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelIsNotNull() {
            addCriterion("evaluateLabel is not null");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelEqualTo(String value) {
            addCriterion("evaluateLabel =", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelNotEqualTo(String value) {
            addCriterion("evaluateLabel <>", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelGreaterThan(String value) {
            addCriterion("evaluateLabel >", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelGreaterThanOrEqualTo(String value) {
            addCriterion("evaluateLabel >=", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelLessThan(String value) {
            addCriterion("evaluateLabel <", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelLessThanOrEqualTo(String value) {
            addCriterion("evaluateLabel <=", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelLike(String value) {
            addCriterion("evaluateLabel like", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelNotLike(String value) {
            addCriterion("evaluateLabel not like", value, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelIn(List<String> values) {
            addCriterion("evaluateLabel in", values, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelNotIn(List<String> values) {
            addCriterion("evaluateLabel not in", values, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelBetween(String value1, String value2) {
            addCriterion("evaluateLabel between", value1, value2, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatelabelNotBetween(String value1, String value2) {
            addCriterion("evaluateLabel not between", value1, value2, "evaluatelabel");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeIsNull() {
            addCriterion("evaluateTime is null");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeIsNotNull() {
            addCriterion("evaluateTime is not null");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeEqualTo(String value) {
            addCriterion("evaluateTime =", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeNotEqualTo(String value) {
            addCriterion("evaluateTime <>", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeGreaterThan(String value) {
            addCriterion("evaluateTime >", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeGreaterThanOrEqualTo(String value) {
            addCriterion("evaluateTime >=", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeLessThan(String value) {
            addCriterion("evaluateTime <", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeLessThanOrEqualTo(String value) {
            addCriterion("evaluateTime <=", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeLike(String value) {
            addCriterion("evaluateTime like", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeNotLike(String value) {
            addCriterion("evaluateTime not like", value, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeIn(List<String> values) {
            addCriterion("evaluateTime in", values, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeNotIn(List<String> values) {
            addCriterion("evaluateTime not in", values, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeBetween(String value1, String value2) {
            addCriterion("evaluateTime between", value1, value2, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andEvaluatetimeNotBetween(String value1, String value2) {
            addCriterion("evaluateTime not between", value1, value2, "evaluatetime");
            return (Criteria) this;
        }

        public Criteria andIndexscoreIsNull() {
            addCriterion("indexScore is null");
            return (Criteria) this;
        }

        public Criteria andIndexscoreIsNotNull() {
            addCriterion("indexScore is not null");
            return (Criteria) this;
        }

        public Criteria andIndexscoreEqualTo(String value) {
            addCriterion("indexScore =", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreNotEqualTo(String value) {
            addCriterion("indexScore <>", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreGreaterThan(String value) {
            addCriterion("indexScore >", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreGreaterThanOrEqualTo(String value) {
            addCriterion("indexScore >=", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreLessThan(String value) {
            addCriterion("indexScore <", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreLessThanOrEqualTo(String value) {
            addCriterion("indexScore <=", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreLike(String value) {
            addCriterion("indexScore like", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreNotLike(String value) {
            addCriterion("indexScore not like", value, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreIn(List<String> values) {
            addCriterion("indexScore in", values, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreNotIn(List<String> values) {
            addCriterion("indexScore not in", values, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreBetween(String value1, String value2) {
            addCriterion("indexScore between", value1, value2, "indexscore");
            return (Criteria) this;
        }

        public Criteria andIndexscoreNotBetween(String value1, String value2) {
            addCriterion("indexScore not between", value1, value2, "indexscore");
            return (Criteria) this;
        }

        public Criteria andColleaguenameIsNull() {
            addCriterion("colleagueName is null");
            return (Criteria) this;
        }

        public Criteria andColleaguenameIsNotNull() {
            addCriterion("colleagueName is not null");
            return (Criteria) this;
        }

        public Criteria andColleaguenameEqualTo(String value) {
            addCriterion("colleagueName =", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameNotEqualTo(String value) {
            addCriterion("colleagueName <>", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameGreaterThan(String value) {
            addCriterion("colleagueName >", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameGreaterThanOrEqualTo(String value) {
            addCriterion("colleagueName >=", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameLessThan(String value) {
            addCriterion("colleagueName <", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameLessThanOrEqualTo(String value) {
            addCriterion("colleagueName <=", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameLike(String value) {
            addCriterion("colleagueName like", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameNotLike(String value) {
            addCriterion("colleagueName not like", value, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameIn(List<String> values) {
            addCriterion("colleagueName in", values, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameNotIn(List<String> values) {
            addCriterion("colleagueName not in", values, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameBetween(String value1, String value2) {
            addCriterion("colleagueName between", value1, value2, "colleaguename");
            return (Criteria) this;
        }

        public Criteria andColleaguenameNotBetween(String value1, String value2) {
            addCriterion("colleagueName not between", value1, value2, "colleaguename");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}